package com.example.address.mapper;

import com.example.address.bean.Address;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/** 处理收货地址数据的持久层接口 */
@Mapper
public interface AddressMapper {
    /**
     * 插入收货地址数据
     * @param address 收货地址数据
     * @return 受影响的行数
     */
    Integer insert(Address address);

    /**
     * 查询某用户的收货地址列表数据
     * @return 该用户的收货地址列表数据
     */
    List<Address> listAddrs();

    /**
     * 根据收货地址id删除数据
     * @param aid 收货地址id
     * @return 受影响的行数
     */
    Integer deleteByAid(Integer aid);

    /**
     * 根据收货地址aid值，查询收货地址详情
     * @param aid 收货地址id
     * @return 匹配的收货地址详情，如果没有匹配的数据，则返回null
     */
    Address findByAid(Integer aid);

    /**
     * 根据收货地址id更新数据
     * @return 受影响的行数
     */
    Integer updateByAid(Address address);
}
